﻿using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Web.Management;
using Microsoft.Practices.EnterpriseLibrary.Data;

namespace TSharp.Core.Test
{
    /* 
        Who：权限的拥用者或主体（Principal、User、Group、Role、Actor等等）
        What：权限针对的对象或资源（Resource、Class）。
        How：具体的权限（Privilege, 正向授权与负向授权）。
        Role：是角色，拥有一定数量的权限。
        Operator：操作。表明对What的How 操作。

    */
    class P
    {
        public static void Test()
        {
            Database db = DatabaseFactory.CreateDatabase();
            String cnnstring = db.ConnectionString;

            SqlConnectionStringBuilder dbconn = new SqlConnectionStringBuilder(cnnstring);
            SqlServices.Install(dbconn.InitialCatalog, SqlFeatures.All, cnnstring);
        }

    }

    /// <summary>
    /// 主体 
    /// </summary>
    public class User
    {
        public int Id;
    }
    /// <summary>
    /// 主体
    /// </summary>
    public class Group
    {
        public Group Parent;
        public List<Group> Children;
        public List<User> Users;
    }

    /// <summary>
    /// 权限
    /// </summary>
    public class Task
    {
        public string Id { get; set; }

    }
    /// <summary>
    /// 角色 
    /// </summary>
    public class Role
    {

    }

}
